nonebot.params
nonebot.params
本模块定义了依赖注入的各类参数。
def Arg(key=None)
说明: Arg 参数消息
参数
key(str | None)
返回
- Any
 
class ArgParam(*args, key, type, **kwargs)
说明
Arg 注入参数
本注入解析事件响应器操作
got所获取的参数。可以通过
Arg、ArgStr、ArgPlainText等函数参数key指定获取的参数,
留空则会根据参数名称获取。参数
*argskey(str)type(Literal['message', 'str', 'plaintext', 'prompt'])**kwargs(Any)
def ArgPlainText(key=None)
说明: Arg 参数消息纯文本
参数
key(str | None)
返回
- str
 
def ArgPromptResult(key=None)
说明:
argprompt 发送结果参数
key(str | None)
返回
- Any
 
def ArgStr(key=None)
说明: Arg 参数消息文本
参数
key(str | None)
返回
- str
 
class BotParam(*args, checker=None, **kwargs)
说明
注入参数。
本注入解析所有类型为且仅为 Bot 及其子类或
None的参数。为保证兼容性,本注入还会解析名为
bot且没有类型注解的参数。参数
*argschecker(ModelField | None)**kwargs(Any)
class DefaultParam(*args, validate=False, **kwargs)
说明
默认值注入参数
本注入解析所有剩余未能解析且具有默认值的参数。
本注入参数应该具有最低优先级,因此应该在所有其他注入参数之后使用。
参数
*argsvalidate(bool)**kwargs(Any)
class DependParam(*args, dependent, use_cache, **kwargs)
说明
子依赖注入参数。
本注入解析所有子依赖注入,然后将它们的返回值作为参数值传递给父依赖。
本注入应该具有最高优先级,因此应该在其他参数之前检查。
参数
*argsdependent(Dependent[Any])use_cache(bool)**kwargs(Any)
def Depends(dependency=None, *, use_cache=True, validate=False)
说明: 子依赖装饰器
参数
dependency(T_Handler | None): 依赖函数。默认为参数的类型注释。use_cache(bool): 是否使用缓存。默认为True。validate(bool | PydanticFieldInfo): 是否使用 Pydantic 类型校验。默认为False。
返回
- Any
 
用法
def depend_func() -> Any: return ... def depend_gen_func(): try: yield ... finally: ... async def handler( param_name: Any = Depends(depend_func), gen: Any = Depends(depend_gen_func), ): ...
class EventParam(*args, checker=None, **kwargs)
说明
注入参数
本注入解析所有类型为且仅为 Event 及其子类或
None的参数。为保证兼容性,本注入还会解析名为
event且没有类型注解的参数。参数
*argschecker(ModelField | None)**kwargs(Any)
class ExceptionParam(*args, validate=False, **kwargs)
说明
的异常注入参数
本注入解析所有类型为
Exception或None的参数。为保证兼容性,本注入还会解析名为
exception且没有类型注解的参数。参数
*argsvalidate(bool)**kwargs(Any)
class MatcherParam(*args, checker=None, **kwargs)
说明
事件响应器实例注入参数
本注入解析所有类型为且仅为 Matcher 及其子类或
None的参数。为保证兼容性,本注入还会解析名为
matcher且没有类型注解的参数。参数
*argschecker(ModelField | None)**kwargs(Any)
class StateParam(*args, validate=False, **kwargs)
说明
事件处理状态注入参数
本注入解析所有类型为
T_State的参数。为保证兼容性,本注入还会解析名为
state且没有类型注解的参数。参数
*argsvalidate(bool)**kwargs(Any)
def EventType()
说明: 类型参数
参数
empty
返回
- str
 
def EventMessage()
说明: 消息参数
参数
empty
返回
- Any
 
def EventPlainText()
说明: 纯文本消息参数
参数
empty
返回
- str
 
def EventToMe()
说明:
to_me参数参数
empty
返回
- bool
 
def Command()
说明: 消息命令元组
参数
empty
返回
- tuple[str, ...]
 
def RawCommand()
说明: 消息命令文本
参数
empty
返回
- str
 
def CommandArg()
说明: 消息命令参数
参数
empty
返回
- Any
 
def CommandStart()
说明: 消息命令开头
参数
empty
返回
- str
 
def CommandWhitespace()
说明: 消息命令与参数之间的空白
参数
empty
返回
- str
 
def ShellCommandArgs()
说明: shell 命令解析后的参数字典
参数
empty
返回
- Any
 
def ShellCommandArgv()
说明: shell 命令原始参数列表
参数
empty
返回
- Any
 
def RegexMatched()
说明: 正则匹配结果
参数
empty
返回
- Match[str]
 
def RegexStr(*groups)
说明: 正则匹配结果文本
重载
1.
(group, /) -> str参数
group(Literal[0])
返回
- str
 
2.
(group, /) -> str | Any参数
group(str | int)
返回
- str | Any
 
3.
(group1, group2, /, *groups) -> tuple[str | Any, ...]参数
group1(str | int)group2(str | int)*groups(str | int)
返回
- tuple[str | Any, ...]
 
def RegexGroup()
说明: 正则匹配结果 group 元组
参数
empty
返回
- tuple[Any, ...]
 
def RegexDict()
说明: 正则匹配结果 group 字典
参数
empty
返回
- dict[str, Any]
 
def Startswith()
说明: 响应触发前缀
参数
empty
返回
- str
 
def Endswith()
说明: 响应触发后缀
参数
empty
返回
- str
 
def Fullmatch()
说明: 响应触发完整消息
参数
empty
返回
- str
 
def Keyword()
说明: 响应触发关键字
参数
empty
返回
- str
 
def Received(id=None, default=None)
说明:
receive事件参数参数
id(str | None)default(Any)
返回
- Any
 
def LastReceived(default=None)
说明:
last_receive事件参数参数
default(Any)
返回
- Any
 
def ReceivePromptResult(id=None)
说明:
receiveprompt 发送结果参数
id(str | None)
返回
- Any
 
def PausePromptResult()
说明:
pauseprompt 发送结果参数
empty
返回
- Any